package com.lyj.mode.single;

/**
 * 枚举方式
 * @author:liyajie
 * @createTime:2022/2/10 15:50
 * @version:1.0
 */
enum Singleton8 {
    // 相当于public static final Singleton8 INSTANCE;
    // 保证了枚举实例只能被实例化一次
    INSTANCE;

    // 定义单例变量
    private Singleton singleton;

    // 枚举构造方法，该构造方法是private，执行构造方法的时候，同时创建我们的单例对象
    Singleton8() {
        singleton = new Singleton();
    }

    // 对外提供公共方法
    public Singleton getSingleton() {
        return singleton;
    }
}
